/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package tipos;
/**
 *
 * Classe que representa o domínio matrícula.
 * @author Lucas de Melo
 **/
public class Matricula {

   /**
   * Constante que representa o tamanho de uma matricula valida.
   */
   private static final int TAM_MATRICULA = 5;
   /**
   * O método validar é responsável por validar uma determinada matrícula
   * de acordo com os padrões especificados, isto é um número de 5 dígitos.
   * @param matricula Corresponde à matrícula a ser validada
   * @exception NullPointerException
   * @exception IllegalArgumentException
   */
   public static void validar(final String matricula) {
        if (matricula == null) {
            throw new NullPointerException();
        }
        if (matricula.length() != TAM_MATRICULA) {
            throw new IllegalArgumentException("Matricula invalida,"
                   + " tamanho ilegal.");
        }
        for (int i = 0; i < matricula.length(); i++) {
            if (!Character.isDigit(matricula.charAt(i))) {
                throw new IllegalArgumentException("Matricula invalida, "
                        + " não é composta apenas por números");
            }
        }
    }
}